package com.example.config;

import org.apache.kafka.clients.producer.ProducerConfig;
import java.util.Properties;

public class KafkaConfig {
    public static Properties getProducerProperties(String bootstrapServers) {
        Properties props = new Properties();
        
        // 设置Kafka服务器地址
        props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, bootstrapServers);
        
        // 设置key序列化器
        props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, 
                "org.apache.kafka.common.serialization.StringSerializer");
        
        // 设置value序列化器
        props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, 
                "org.apache.kafka.common.serialization.StringSerializer");
        
        // 设置确认机制
        props.put(ProducerConfig.ACKS_CONFIG, "all");
        
        // 设置重试次数
        props.put(ProducerConfig.RETRIES_CONFIG, 3);
        
        // 设置批量大小
        props.put(ProducerConfig.BATCH_SIZE_CONFIG, 16384);
        
        // 设置延迟时间
        props.put(ProducerConfig.LINGER_MS_CONFIG, 1);
        
        // 设置缓冲区大小
        props.put(ProducerConfig.BUFFER_MEMORY_CONFIG, 33554432);
        
        return props;
    }
} 